a. Field of the Invention
The present invention pertains to computer systems and specifically to computer systems that have a memory location used to boot the computer.
b. Description of the Background
Computerized devices often contain a non-volatile memory that is used by the device to begin operations. This boot memory is critical for the device to receive initial instructions so that the device may begin functioning. Often, the boot memory may have only a small set of instructions that may direct the device's processor to load other instructions into the device's volatile memory.
The non-volatile memory used for booting a computerized device may be a single point of failure for the device. If the non-volatile memory is corrupted or fails in any manner, the device may not start up correctly and thus be inoperable or dangerously unstable. Some devices may require very high reliability and may be very costly or impossible to repair if there is a failure during the boot up sequence. Remotely operated computer servers or computers onboard a satellite may be such examples. In other cases, a failure of a computerized device may be a mere inconvenience and may give a consumer a poor impression of the quality of the device.
There may be reason for updating the firmware that resides in the non-volatile memory from time to time. In some situations, it may be customary to provide periodically updated software and may further become necessary to update the boot firmware to operate properly with the updated software. Current systems do not provide a convenient way to update the boot firmware.
It may therefore be advantageous to provide a system and method for providing a fault tolerant bootable memory device. It may be further advantageous to provide a system and method for reliably updating a bootable memory device.